Intelligent media navigation

ABSTRACT

Techniques and systems for intelligent navigation of sequential media content are disclosed. The intelligent navigation is well suited to enable users to better control media playback with regards to a media playback application operating on a computing device. One embodiment of a method for playing sequential media content by a media playback application operating on a computing device includes at least the acts of: initiating playing of the sequential media content by the media playback application; receiving a user input requesting to start playing at a new position in the sequential media content; marking a current position in the sequential media content; thereafter initiating playing of the sequential media content at the new position; receiving a user input requesting to reset playing to the marked current position; and subsequently initiating playing of the sequential media content at the marked current position.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to: (i) U.S. Provisional PatentApplication No. 60/724,622, filed Oct. 7, 2005, and entitled “MULTIMEDIASYSTEM,”, which is hereby incorporated herein by reference; and (ii)U.S. Provisional Patent Application No. 60/725,544, filed Oct. 10, 2005,and entitled “MULTIMEDIA CONTROL CENTER,”, which is hereby incorporatedherein by reference.

This application is related to: (i) U.S. patent application Ser. No.11/245,937, filed Oct. 7, 2005, and entitled “TECHNIQUES FOR PAIRINGREMOTE CONTROLLERS WITH HOST DEVICES”, which is hereby incorporated byreference herein; (ii) U.S. patent application Ser. No. 11/247,975,filed Oct. 10, 2005, and entitled “MULTI-MEDIA CENTER FOR COMPUTINGSYSTEMS”, which is hereby incorporated by reference herein; and (iii)U.S. patent application Ser. No. 11/249,139, filed Oct. 11, 2005, andentitled “MULTIMEDIA CONTROL CENTER”, which is hereby incorporated byreference herein.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure as it appears in the U.S. Patent and TrademarkOffice patent file or records, but otherwise reserves all copyrightrights whatsoever.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to user interfaces and, more particularly,to user interfaces for multimedia computer systems.

2. Description of the Related Art

For several years, personal computers have utilized various mediaapplications. The media applications are individualized programs thatallow users to browse through and output various media items associatedwith the media applications. By way of example, computers may comebundled with photo management programs for managing and viewing photos,music management programs for managing and listening to music, videoapplications for managing and viewing video stored on the computer, andDVD application for playing DVDs. Examples of these programs may includeiPhoto, iTunes, and Quicktime, all of which are manufactured by AppleComputer of Cupertino, Calif.

While these programs may be simple to use, when the computer is operatedas a media playing device, the user typically does not need all thefunctionality that these programs offer. Furthermore, users typically donot want to go back and forth from one application to the other as thiscan be time intensive and distracting. Moreover, users have becomeaccustom to viewing content from a remote location (TV remote), andtherefore they desire the same functionality in a multimedia computer.

Therefore, an improved cross platform user interface that is easy to useand that unites various media applications, and more particularly a userinterface that provides a centralized location for accessing variousmedia applications is desired. A user interface that allows the personalcomputer to function more like a media player is also desired.

SUMMARY OF THE INVENTION

The invention relates to techniques and systems for intelligentnavigation of sequential media content. The intelligent navigation iswell suited to enable users to better control media playback withregards to a media playback application operating on a computing device.

In one embodiment, the intelligent navigation allows a user to skipforward or backward through the sequential media content. For example, auser can signal a media control center via a remote controller to informa media playback application to skip forward or backward. Typically, thesequential media content will have chapter positions and enable a userto sequentially transition to the beginning of chapters (e.g., using anext or previous command on a remote controller). The intelligentnavigation allows a user to transition to chapters while alsoremembering its initial transition point inside the chapter so that theuser can decide to transition back to the initial transition point. Thisinitial transition point can be referred to as a virtual chapter. Themedia control center can maintain one or more virtual chapters toprovide users with an intelligent navigation experience.

The invention can be implemented in numerous ways, including as amethod, system, device, apparatus (including graphical user interface),or computer readable medium. Several embodiments of the invention arediscussed below.

As a method for playing sequential media content by a media playbackapplication operating on a computing device, one embodiment of theinvention includes at least the acts of: initiating playing of thesequential media content by the media playback application; receiving auser input requesting to start playing at a new position in thesequential media content; marking a current position in the sequentialmedia content; thereafter initiating playing of the sequential mediacontent at the new position; receiving a user input requesting to resetplaying to the marked current position; and subsequently initiatingplaying of the sequential media content at the marked current position.

As a media navigation method for navigating through a media item havingsequential media content arranged in a series of chapters, oneembodiment of the invention includes at least the acts of: receiving aplay request to play the media item; playing the sequential mediacontent of the media item in response to the play request; receiving auser navigation input with respect to the media item; and saving acurrent play position as a virtual chapter in response to the receivingof the user navigation input.

As a media navigation method for navigating through a media item havingsequential media content arranged in a series of chapters, anotherembodiment of the invention includes at least the acts of: receiving aplay request to play the media item; playing the sequential mediacontent of the media item in response to the play request; receiving afirst user navigation input with respect to the media item; saving acurrent play position as a virtual chapter in response to the receivingof the first user navigation input; jumping forward to a next chapter inthe sequential media content of the media item in response to thereceiving of the first user navigation input; receiving a second usernavigation input with respect to the media item; and jumping backward tothe virtual chapter in the sequential media content of the media item inresponse to the receiving of the second user navigation input.

As a computer readable medium including at least computer program codefor playing sequential media content by a media playback applicationoperating on a computing device, one embodiment of the inventionincludes at least: computer program code for initiating playing of thesequential media content by the media playback application; computerprogram code for receiving a user input requesting to start playing at anew position in the sequential media content; computer program code formarking a current position in the sequential media content; computerprogram code for thereafter initiating playing of the sequential mediacontent at the new position; computer program code for receiving a userinput requesting to reset playing to the marked current position; andcomputer program code for subsequently initiating playing of thesequential media content at the marked current position.

Other aspects and advantages of the invention will become apparent fromthe following detailed description taken in conjunction with theaccompanying drawings which illustrate, by way of example, theprinciples of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The patent or application file contains at least one drawing executed incolor. Copies of this patent or patent application publication withcolor drawing(s) will be provided by the Office upon request and paymentof the necessary fee. The invention may best be understood by referenceto the following description taken in conjunction with the accompanyingdrawings in which:

FIG. 1 is a simplified block diagram of a computer system, in accordancewith one embodiment of the present invention.

FIG. 2 is a perspective view of a remote control, in accordance with oneembodiment of the present invention.

FIG. 3 is a simplified block diagram of a multimedia system, inaccordance with one embodiment of the present invention.

FIG. 4 is a diagram of a GUI hierarchy, in accordance with oneembodiment of the present invention.

FIG. 5A is a multimedia method, in accordance with one embodiment of thepresent invention.

FIG. 5B is a multimedia method, in accordance with one embodiment of thepresent invention.

FIGS. 6A-6H are diagrams of a media carousel, in accordance with oneembodiment of the present invention.

FIG. 7 is a method of operating a media menu as a media carousel, inaccordance with one embodiment of the present invention.

FIG. 8 is a method of transitioning to a media carousel from anapplication window, in accordance with one embodiment of the presentinvention.

FIG. 9 is a method of sequentially and continuously introducing mediaicons onto a screen, in accordance with one embodiment of the presentinvention.

FIGS. 10A-10G are diagrams illustrating the method of sequentially andcontinuously introducing media icons onto a screen, in accordance withone embodiment of the present invention.

FIG. 11 is a method of sequentially and continuously introducing mediaicons onto a screen, in accordance with one embodiment of the presentinvention.

FIGS. 12A-12F are diagrams illustrating the method of sequentially andcontinuously introducing media icons onto a screen, in accordance withone embodiment of the present invention.

FIGS. 13A-13C are diagrams of a menu, in accordance with one embodimentof the present invention.

FIG. 14 is a method of presenting a menu, in accordance with oneembodiment of the present invention.

FIG. 15 is a method of previewing a movie or photo album, in accordancewith one embodiment of the present invention.

Fig. 16 is a method of reflecting and skewing an input image, inaccordance with one embodiment of the present invention.

FIG. 17 is a method of transitioning from a media carousel to a featuremenu, in accordance with one embodiment of the present invention.

FIG. 18A-18D are diagrams illustrating the method of transitioning froma media carousel to a feature menu, in accordance with one embodiment ofthe present invention.

FIGS. 19A-19E are diagrams of a feature folder, in accordance with oneembodiment of the present invention.

FIG. 20 is a method of displaying media and traversing through thedisplayed media, in accordance with one embodiment of the presentinvention.

FIGS. 21A-21F are diagrams of a slider for browsing through a group ofimages, in accordance with one embodiment of the present invention.

FIGS. 22 is a method of transitioning between a feature menu and anapplication menu associated with the feature menu, in accordance withone embodiment of the present invention.

FIGS. 23A-23C are diagrams illustrating the method of transitioningbetween a feature menu and an application menu associated with thefeature menu, in accordance with one embodiment of the presentinvention.

FIG. 24 is a method of superimposing an overlay over an applicationwindow, in accordance with one embodiment of the present invention.

FIG. 25A is a flow diagram of a media play process, in accordance withone embodiment of the present invention.

FIG. 25B is a flow diagram of a media navigation process, in accordancewith one embodiment of the present invention.

FIGS. 25C and 25D help illustrate the use of virtual chapters, inaccordance with one embodiment of the present invention.

FIG. 26A is a method of operating a DVD player in conjunction with amedia control center, in accordance with one embodiment of the presentinvention.

FIG. 26B is a method of operating a DVD player in conjunction with amedia control center, in accordance with one embodiment of the presentinvention.

FIGS. 27A-27D are diagrams of a media carousel, in accordance with oneembodiment of the present invention.

FIGS. 28A-28E are diagrams of a media carousel transitioning from anapplication window, in accordance with one embodiment of the presentinvention.

FIGS. 29A-29C are diagrams of a music feature menu, in accordance withone embodiment of the present invention.

FIG. 30 is a diagram of a playlist folder, in accordance with oneembodiment of the present invention.

FIGS. 31A-31C are various diagrams of a now playing window, inaccordance with one embodiment of the present invention.

FIG. 32 is a diagram of a photo feature menu, in accordance with oneembodiment of the present invention.

FIG. 33 is a diagram of a video feature menu, in accordance with oneembodiment of the present invention.

FIG. 34 is a diagram of a video folder, in accordance with oneembodiment of the present invention.

FIGS. 35A-35C are a diagram of a video folder, in accordance with oneembodiment of the present invention.

FIG. 36 is a diagram of a DVD feature menu, in accordance with oneembodiment of the present invention.

FIGS. 37A-37E is a diagram of transitioning from a media carousel to aVideo feature menu, in accordance with one embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION

The invention relates to techniques and systems for intelligentnavigation of sequential media content. The intelligent navigation iswell suited to enable users to better control media playback withregards to a media playback application operating on a computing device.

According to one aspect, the invention relates to techniques and systemsfor centralized access to multimedia content stored on or available to acomputing device. The centralized access can be provided by a mediacontrol interface that receives user inputs and interacts with mediaprograms resident on the computing device to produce graphical userinterfaces that can be presented on a display device.

In one embodiment, the user inputs being provided to the media controlinterface are provided by a remote controller. The remote controllertransmits user input requests to the media control interface in awireless manner. For example, the remote controller can be an infraredremote controller.

Embodiments of various aspects of the invention are discussed below withreference to FIGS. 1-37E. However, those skilled in the art will readilyappreciate that the detailed description given herein with respect tothese figures is for explanatory purposes as the invention extendsbeyond these limited embodiments.

Computer System

FIG. 1 is a block diagram of an exemplary computer system 10, inaccordance with one embodiment of the present invention. The computersystem 10 includes a multimedia computer 12. The multimedia computer 12may be a general purpose computer such as an IBM compatible computer oran Apple compatible computer. This may for example include withoutlimitation towers, desktops, laptops, tablets or handheld computers,embedded devices, consumer electronic devices, cell phones, or otherelectronic devices. Examples of Apple computers include iMac, Power MacG3, Power Mac G4, Power Mac G5, Mac mini, eMac, iBook, and Powerbook,all of which are or have been manufactured by Apple computer ofCupertino Calif.

The multimedia computer 10 typically includes a processor 14 configuredto execute instructions and to carry out operations associated with thecomputer system 10. For example, using instructions retrieved forexample from memory, the processor 14 may control the reception andmanipulation of input and output data between components of thecomputing system 10. The processor 14 can be implemented on asingle-chip, multiple chips or multiple electrical components.

In most cases, the processor 14 together with an operating systemoperates to execute computer code and produce and use data. By way ofexample, the operating system may correspond to Mac OS X, OS/2, DOS,Unix, Linux, Palm OS, Windows, and the like. The operating system canalso be a special purpose operating system, such as may be used forlimited purpose appliance-type computing devices.

The operating system, other computer code and data may reside within amemory block 16 that is operatively coupled to the processor 14. Memoryblock 16 generally provides a place to store computer code and data thatare used by the computer system 10. By way of example, the memory block16 may include Read-Only Memory (ROM), Random-Access Memory (RAM), harddisk drive and/or the like.

The computer code and data can also reside on a removable storage mediumthat is loaded or installed onto the computer system 10 when needed.Removable storage mediums may include, for example CD and/or DVDs thatare loaded into an optical drive 18 contained inside the computer 12. Byway of example, the optical drive may be a super Drive, which ismanufactured by Apple Computer of Cupertino, Calif. Alternatively,removable storage mediums may include floppy disks, USB storage keys,magnetic tape, and the like.

The computer system 10 also includes a display device 20 that isoperatively coupled to the processor 14. The display device 20 may beintegrated with the computer 12 or it may be a separate component (asshown). The display device 20 may be a liquid crystal display (LCD).Alternatively, the display device 20 may be a monitor such as amonochrome display, CGA display, EGA display, VGA display, super VGAdisplay, CRT display, or the like. The display device may alsocorrespond to a plasma display or a display implemented with electronicinks.

The display device 20 is generally configured to display a graphicaluser interface (GUI) that provides an easy to use interface between auser of the computer system and the operating system or applicationrunning thereon. Generally speaking, the GUI represents, programs, filesand operational options with graphical images. The graphical images mayinclude windows, fields, dialog boxes, menus, icons, buttons, cursors,scroll bars, etc. Such images may be arranged in predefined layouts, ormay be created dynamically to serve the specific actions being taken bya user. During operation, the user can select and activate variousgraphical images in order to initiate functions and tasks associatedtherewith. By way of example, a user may select a button that opens,closes, minimizes, or maximizes a window, or an icon that launches aparticular program. The GUI can additionally or alternatively displayinformation, such as non interactive text and graphics.

The multimedia computer system 10 also includes one or more inputdevices 26 that are operatively coupled to the multimedia computer 12.The input devices 26 may be integral with the multimedia computer orthey may be separate components (e.g., peripheral). Peripheral inputdevices 26 may be connected to the computer system 10 through wiredconnections (e.g., cables/ports), or alternatively they may be connectedto the computer system 10 through wireless connections. By way ofexample, the data link may correspond to PS/2, FIREWIRE, USB, IR, RF,Bluetooth or the like. Examples of input devices that can be usedinclude buttons, switches, keypads, keyboards, mice, trackballs, touchpads, joy sticks, touch screens and the like.

The multimedia computer system 10 also includes a network connection 30for communicating with a network 32 such as the internet or world wideweb. The network connection 30 allows a user to view and downloadcontent from the network 32. By way of example, the network connectionmay be embodied as a network card or modem. In one embodiment, thenetwork connection allows a user to download media content such as videofiles (movies, trailers, music videos), audio files (e.g., songs,audiobooks, etc), photo files (e.g., pictures), and/or the like, to themultimedia computer. The media content may for example be based on MP3or MP4 formats.

Although not shown, the computer system may also include capabilitiesfor connecting to other devices including I/O devices such as printers,scanners, speakers or dedicated handheld devices such as cameras, PDAs,music players, game players, and the like.

In accordance with one embodiment of the present invention, the memoryblock 16 includes a media control center program 25 that unifies variousmultimedia applications of the multimedia computer into a singlecentralized environment. The multimedia applications may for example beselected from photo management programs, video management programs,music management programs, and DVD management programs. By way ofexample, the photo management programs may be iPhoto, the videomanagement program may be Quicktime, and the music management programmay be iTunes; all of which are manufactured by Apple Computer ofCupertino, Calif.

The media control center program 25 may include a central-user-interfacethat allows access to the various multimedia applications. Thecentral-user-interface can graphically represent each multimediaapplication as a selectable item in a main menu. Thecentral-user-interface can also graphically represent various layersbehind the main menu such as for example submenus directed more closelyto a particular media.

In accordance with one embodiment, the computer system also includes amultimedia remote control 28. The remote control 28 allows a user toremotely control the multimedia control center. The remote control mayfor example be connected to the multimedia computer via an infraredconnection (IR). Generally speaking, the remote control allows a user toselect and play various media items that are overseen by the multimediacontrol center.

Remote Control

The wireless controller or portable remote controller used herein canhave many different shapes and configurations. FIG. 2 is a perspectiveview of a remote controller 60 suitable for use in one embodiment of theinvention. The remote controller 60 is, for example, suitable for use asthe remote control illustrated in FIG. 1. The remote controller 60 islightweight, low powered and highly portable. Typically, the remotecontroller 60 is small enough to be easily held within a single hand ofits user. The remote controller 60 includes a wireless transmissionwindow 62 through which transmitted wireless (e.g., infrared) signalscan be output. The remote controller 60 also includes user input devices64. In this embodiment, the user input device 64 includes a set of fourinput buttons 66 arranged in a circular fashion, a center button 68 thatis surrounded by the set of four input buttons 66, and another button70. These various buttons can, for example, be implemented by mechanicalswitches or touch-sensitive surfaces.

These buttons can be mapped to various different functions depending onthe particular application program on a host device that is beingcontrolled by the remote controller 60. For example, if the applicationprogram on the host device being controlled is a media playerapplication, then the user input device 64 can provide media playbackcontrols. As an example, the set of four input buttons 66 can providefunctions such as volume up (top), volume down (bottom), next track(right) and previous track (left); the center button 68 can provide aplay/pause function; and the other button 1010 can provide a menurequest function. Moreover, other management type commands can be mappedto combinations of buttons to minimize the number of buttons and toavoid accidental management commands.

In accordance with one embodiment, the remote control is configured tonavigate through various GUIs of a multimedia control center. In oneembodiment, the left and right buttons are used to rotate features of amain menu (e.g., carousel). In another embodiment, the menu button isused to transition from a desktop to a main menu of the multimediacontrol center. For example, pressing the main menu button may be usedto exit the desktop and enter the main menu of the multimedia controlcenter, or to exit the main menu of the multimedia control center andenter the desktop (depends which window is currently opened). Once inthe multimedia control center, the menu button may be used to go back tothe previous screen or menu layer. That is, if in a sub/submenu,pressing menu will take the user back to submenu, and pressing menuagain will take the user to menu. In yet another embodiment, theplay/pause button may be used to activate a feature menu when navigatingthrough the main menu of the multimedia control center. For example,when a feature is highlighted in the main menu, pressing the play pausebutton may be used to exit the main menu and enter the feature menu.Alternatively, when in submenus containing a list of media items,pressing the play/pause button may be used to activate the media item.

Software Diagram

FIG. 3 is a block diagram of a media control system 80, in accordancewith one embodiment of the present invention. The media control system80 includes a multimedia control center 82. The multimedia controlcenter 82 operates on a computing device, such as a multimedia computer.The multimedia control center 82 couples to a plurality of mediaapplications 84. Each of the media applications 84 can operate on one ormore different types of media, including audio, images, and video (e.g.,movies). These media applications 84 can be installed on the computerand operable individually as well as operable through the multimediacontrol center 82. In order for the multimedia control center 82 toproperly operate or interact with the media applications 84, the mediacontrol system 80 includes a plurality of media modules 86. Each of themodules can correspond, in one embodiment, to one of the mediaapplications 84. The modules 86 are then used by the multimedia controlcenter 82 to not only assist with interaction with the mediaapplications 84, but also to permit access to one or more media storagedevices 88 which stores the media data which is utilized by the mediaapplications 84. Hence, the multimedia control center 82 can directlyaccess the stored media data within the one or more media storagedevices 88 by way of the media modules 86.

The multimedia control center 82 can receive user inputs by way of aremote device. In one embodiment, the remote device is a remotecontroller, such as an infrared remote controller. A user can interactwith the remote device to cause user requests to be transmitted to thecomputer operating the multimedia control center 82. Upon receiving theuser inputs, the multimedia control center 82 can interact with theappropriate media application 84 or media module 86. In addition, themultimedia control center 82 can cause graphical user interfaces to bepresented on a display. The graphical user interfaces can correspond tothe media data from the media storage devices 88. The display can alsopresent graphical user interfaces provided by the media applications 84.Still further, the media applications can output graphical userinterfaces to the display, while the multimedia control center 82 alsoproduces a partial graphical user interface that can be provided alongwith the graphical user interfaces by the media applications 84.

One aspect of the media control system 80 is that a user of a remotedevice is able to interact with a plurality of installed applicationprograms operating on a computer through use of a multimedia controlcenter. Here, the multimedia control center can direct the incoming userinput to the appropriate media application. The multimedia controlcenter can also provide its own user interfaces to facilitate the userof the remote device in navigating to and/or selecting mediaapplications or media content to be presented, such as at a displaydevice. Another aspect of the media control system 80 is that amultimedia control center can manage interaction with a plurality ofmedia applications. In this regard, the multimedia control center 82intelligently determines which media application or application relatedmedia content is to be utilized in response to user input requests.Another aspect of the media control system 80 is a multimedia graphicaluser interface that enables a user, even a remote user, to navigatethrough multiple media types to select, preview or play media data.

Media Center Heirarchy

FIG. 4 is a diagram of a GUI hierarchy 100 for a media control center,in accordance with one embodiment of the present invention. The GUIhierarchy may for example be used in conjunction with a media controlcenter described in previous figures. The GUI hierarchy 100 includes amedia menu 102 that serves as a central location for accessing variousmedia. The media menu 102 contains a plurality of media features 104that point to feature menus 106 stored behind the media menu 102. Themedia features 104 may be displayed as a list of media features or asgraphical icons (as shown). When a media feature 104 is activated, thefeature menu 106 associated with the activated media feature 104 isopened. The feature menus 106 typically include a header that identifiesthe media feature 104 and a list of submenus, media items, folders, andcontrol options, that are associated with the media feature 104.

In one embodiment, a first feature menu 106A includes a header 108 and alist of control options 110. The control options 110 may for example beused to perform actions in an application that is being controlled bythe media control center. By way of example, the first feature menu maybe a DVD feature menu, and may include controls for starting a movie,resuming play of a movie, ejecting a disc, accessing the menu of theDVD, or muting the movie.

In another embodiment, a second feature menu 106B includes a header 108and a list of folders 112. When activated, the content inside thefolders 112 can be played or opened. When played, the application thatruns the media content is opened and the media content associated withthe folder 112 is played. When opened, the content inside the folder 112is displayed. The content can be displayed as a folder menu 114 having alist of media items 116, a folder menu 118 having a group of icons orthumbnail images 120 that represent media items, or a folder menu 122having a second list of folders 124 (e.g., subfolders 126). When a mediaitem 116 or 120 is activated, the application that runs the mediacontent associated with the media item is opened and the media contentis played.

The second feature menus 106B may correspond to music feature menus,photo feature menus, video feature menus, and the like.

The music feature menu may contain a plurality of media items, foldersor control options including but not limited to songs, playlists,artists, albums, shuffle songs, podcasts, genres, composers, and audiobooks. Each of the folders includes a plurality of subfolders or a listof media items. In the case of “songs” for example a list of all thesongs stored in a data store are presented in the list. In order to playa song, the user simply has to traverse a highlight bar through thelist, and select the desired song. In the case of “playlists”, a list ofall the playlists are presented in a list. Each playlist contains apreselected group of songs. In order to play a song in the playlist, theuser simply has to traverse a highlight bar through the list, and selectthe desired song. Once activated, an additional screen may be used toprovide information about the song as for example album, title, artist,album art, and time of play.

The photo feature menu may contain a plurality of folders or controloptions including but not limited to library, last roll, last 12 months,and photo albums. Each of the folders includes either a plurality ofsubfolders or a list of media items. In the case of “library” forexample a list of all the pictures stored in the data store arepresented in the list. Thumbnail images rather than titles of thepictures may be used. For example, the thumbnail images may be presentedin rows and columns. In order to show a photo, the user simply has totraverse a highlight bar through the list or thumbnail images, andselect the desired picture. In the case of a “photo album”, theactivation thereof causes a slide show of the photo album to bepresented.

The video feature menu may contain a plurality of folders or controloptions including but not limited to my videos, movie trailers and musicvideos. Each of the folders includes a list of media items. My videoscontain for example a list of home video movies or short video movies.Movie trailers contain a list of movie trailers. The movie trailers maybe in the form of thumbnail images of the movie poster and may bepresented in rows and columns. In order to play a movie trailer, theuser simply has to move a highlight bar to traverse through thethumbnail images, and select the desired movie. Music videos contain alist of music videos stored in the data store (similar to songs folder).Alternatively, the music videos may be presented similarly to songs ormovie trailers (except that album art is used instead of movie posterart). In order to play a music video, the user simply has to traverse ahighlight bar through the list or thumbnail images, and select thedesired music video.

Traversing Through Media Heirarchy

FIG. 5A is a multimedia method 150, in accordance with one embodiment ofthe present invention. The multimedia method 150 begins at block 152where a determination is made as to whether or not a media hubinitiation command is received. The media hub initiation command may begenerated when a user selects the menu button on the remote controlshown in FIG. 2 (when an application such as a desktop is opened).

If the command is received, the method 150 proceeds to block 154 wherethe media hub is opened. This generally includes activating andpresenting the media menu on a display, and removing the currentapplication from the screen. The current application typically staysactive, but hidden from view. The media menu includes a collection ofmedia features that indicate media that can be selected. The mediafeatures may for example be icons representative of a particular media(e.g., DVD, Videos, Photos, Music, etc). Any number of media featuresmay be presented. In most cases, a transition effect is used totransition the screen from the current application to the media hubenvironment. By way of example, the transitioning effect may includecross dissolve, fading in/out, overlap, push or scale down. Thetransitioning effect may also include marching the icons into the screenone by one.

Once the media hub is opened, the method 150 proceeds to block 156 wherea determination is made as to whether or not a window reinstatingcommand is received. The window reinstating command may be generatedwhen a user selects the menu button on the remote control shown in FIG.2 when the media hub is displayed. If a window reinstating command isreceived, the method 150 proceeds to block 158 where the media hub isclosed. This generally includes deactivating and removing the media hubfrom the screen, and presenting the previous application on the screen.In most cases, a transition effect is used to transition the displayfrom the media hub environment to the previous application. The closingtransition effect may be the same as, different than or opposite theopening transition effect.

If a window reinstating command is not received, the method 150 proceedsto block 160 where a determination is made as to whether or notnavigation commands are received. The navigation commands may begenerated when a user selects the control wheel on the remote controlshown in FIG. 2. For example, pressing up and down or side to side. Ifnavigation commands are received, the method 150 proceeds to block 162where the media features are transitioned or flipped through inaccordance with the navigation commands. For example, the various mediafeatures may be highlighted or moved to a feature selection position.

If navigation commands are not received, the method 150 proceeds toblock 164 where a determination is made as to whether or not anactivation command is received. The activation command may be generatedwhen a user selects the selection button on the remote control shown inFIG. 2. The media feature currently highlighted or placed in the featureselection position is the media feature that is activated. If theselection command is not received, the method 150 proceeds back to block156.

If the selection command is received, the method 150 proceeds to block166 where a feature menu associated with the selected media feature isopened. This generally includes activating and presenting the featuremenu on the screen, and removing the media menu environment from thescreen. The media menu environment typically stays active, but hiddenfrom view. The feature menus may include a list of folders, or acollection of media items that can be selected. The folders may containfurther subfolders or list of media items that can be selected (and soon). The media items may for example be music, photos, or videos. Anynumber of folders, or media items may be presented. Alternatively oradditionally, the feature menus may include a list of control optionsthat when selected cause an action to be performed. For example, thecontrol options may be associated with operating a DVD player. In mostcases, a transition effect is used to transition the display from themedia menu to the feature menus. Similar or different transition effectsmay be used between the various feature menus and the media menu.

Following the opening of the feature menu, the method 150 proceeds toblock 168 where a determination is made as to whether or not a media hubinitiation command is received. The media hub initiation command may begenerated when a user selects the menu button on the remote controlshown in FIG. 2. If the media hub initiation command is received, themethod 150 proceeds to block 170 where the feature menu is closed Thisgenerally includes deactivating and removing the feature from thescreen, and presenting the media menu on the screen. In most cases, atransition effect is used to transition the display from the featuremenu to the media menu. The closing transition effect may be similar ordifferent than the opening transition effect.

If the media hub initiation command is not received, the method 150proceeds to feature menu operations 172 including for example navigatingthrough folders, lists of media items or control options, and activatinga particular folder, lists of media items or control options. Whenfolders are selected, content may be played or new subfolders or listsof media items may be displayed. When particular media items areselected, they are presented and/or played. For example, if a photoalbum is selected, the photo management program is instructed to playthe photo album. If a song is selected, the music management program isinstructed to play the song. If a video is selected, the videomanagement program is instructed to play the video. If a control optionis selected the action associated with the control option is performed.For example, in the case of a DVD feature menu, the control option maybe play DVD, and therefore when selected the DVD player is instructed toplay the DVD loaded in the DVD player.

In one embodiment, various transition effects are performed whenfolders, lists of media items or control options are selected. Forexample, the DVD feature menu may include a transition effect between itand the actual DVD menu supplied by the DVD player. The transitioneffect may for example include blurring out and placing the actual DVDmenu behind the DVD feature menu, and/or fading out the DVD feature menuand focusing the actual DVD menu when the DVD menu control option isselected. In another embodiment, the feature menus folders may includeinventive way of presenting the highlighted but un-activated mediaitems. For example, the feature menus or folders may include a previewwindow that plays the media item that is highlighted but un-activated.The preview window allows a user to see the contents contained thefolder before activating the folder. For example, in the case of a photoalbum, the preview window may sequence through the photos contained inthe photo album that is highlighted. The same can be said for videos.

FIG. 5B is a multimedia method 180, in accordance with one embodiment ofthe present invention. The multimedia method 180 begins at block 182where a main menu is presented. The main men may for example correspondto the main menu described below. The main menu includes a plurality ofmedia features, and more particularly, a DVD feature, Photo feature,Video feature, and a Music feature. Following block 182, the methodproceeds to blocks 184, 186, 188, and 190 where a determination is madeas to whether or not one of the media features has been selected. If theDVD feature is selected, a DVD feature menu is presented (block 185). Ifthe video feature is selected, a Video feature menu is presented (block189). If the photo feature is selected, a Photo feature menu ispresented (block 187). If the Music feature is selected, a Music featuremenu is presented (block 191). Each of the feature menus typicallyinclude a plurality of menu items. Examples of feature menus may befound in FIGS. 25-35. When a feature menu is opened, the method proceedsto block 192 where a determination is made as to whether or not a menucommand is received. The menu command may for example be the menu buttonof the remote control described in FIG. 2. If a menu command isreceived, the method proceeds back to block 182 where the main menu ispresented. If a menu command is not received, the method proceeds toblock 194 where a determination is made as to whether or not a mediaitem has been selected/activated. For example, highlighting one of themedia items with a selector bar and thereafter pressing the play/pausebutton of the remote control shown in FIG. 2. If a media item is notselected/activated, the method proceeds back to block 192. If a mediaitem is selected/activated, the method proceeds to block 196 where anaction associated with the media item is performed. For example, openinga media file or another submenu.

Media Carousel

FIG. 6 is a diagram of a media carousel 200 embodied in a GUI, inaccordance with one embodiment of the present invention. The mediacarousel 200 may be the media menu of the media hub. That is, it mayprovide a central location for accessing various media features.

As shown, the media carousel 200 includes a plurality of media icons 202associated with the media features of the media hub. The media icons 202represent the media features and when activated take the user to featuremenus associated with the media feature they represent. The mediafeatures may be associated with all sorts of media including but notlimited to Photos, Videos, DVD, music, TV, etc. Thus, the carousel 200may include a photo icon representative of a photo feature, a music iconrepresentative of a music feature, a DVD disk icon representative of aDVD feature, a video icon representative of a video feature, or a TVicon representative of a TV feature.

The layout and configuration of the media icons 202 may be widelyvaried. Referring to FIG. 6B, the media icons 202 may be placed atpreset positions 204 along closed path or line 206 (that may or may notbe hidden from view). The closed path or line may form any shapeincluding for example standard shapes as circles, ovals, squares,rectangles, triangles, hexagons, octagons, trapezoids, etc, or advancedshapes such as L shaped, H shaped, etc. The number of preset positions204 generally corresponds to the number of features to be presented inthe carousel 200 (there is an icon for each feature and a position foreach icon) Furthermore, the preset positions 204 may be positionedanywhere on the line 206, although in the preferred embodiment, thepresent positions 204 are substantially equally spaced along the line206.

Referring to FIGS. 6C-6H, the media icons 202 are configured to movealong the line 206 from one preset position 204 to the next presetposition 204. For example, when a navigation command is received, themedia icons 202 are all moved over one position. That is, they move as agroup along the line 206 and stop when they all have shifted to the nextpreset position 204. If the navigation command is a left command, themedia icons 202 typically rotate around the line 206 in a counterclockwise motion (see arrows in FIG. 6F-6H). If the navigation commandis a right command, the media icons 202 typically rotate around the line206 in a clockwise motion (see arrows in FIGS. 6C-E).

As shown in all the figures, the media carousel 200 includes a primaryposition 204A and one or more secondary positions 204B, 204C and 204D.The primary position 204A is the location where the media icons 202 movewhen they are to be selected. That is, the media icons 202 can beactivated when they are in the primary position 204A. In essence,placing the media icon 202 in the primary position 204A is analogous tohighlighting the media icon 202 (selected but not activated). Thesecondary positions 204B-D are holding positions, and the media icons202 located thereon are locked from activation.

The primary position 204A can be any one of the preset positions 204,although it is typically the position that best presents a feature to beselected. For example, one that places the media icon 202 towards thecenter of the screen. For the oval path 206 shown, the primary position204A may be located at the highest or lowest point on the oval path 206(as shown).

In one embodiment, a media label that identifies the media featureappears underneath the media icon 202 when the media icon 202 is placedin the primary position 204A. For example, the label “FEATURE 1” appearsunderneath icon #1 when icon #1 is placed in the primary position (asshown in FIG. 6A), the label “FEATURE 2” appears underneath icon #2 whenicon #2 is placed in the primary position (as shown in FIG. 6C), thelabel “FEATURE 3” appears underneath icon #3 when icon #3 is placed inthe primary position (as shown in FIG. 6D), the label “FEATURE 4”appears underneath icon #4 when icon #4 is placed in the primaryposition (as shown in FIG. 6E). In the case given above, the DVD iconmay include a “DVD” label, the photo icon may include a “PHOTO” label,the video icon may include a “VIDEO” label, and the music icon mayinclude a “MUSIC” label.

In one embodiment, the media icons 202 are configured to appear asthough they are on a visual plane with the media icon 202 in the primaryposition 204A appearing in the foreground, and the media icons 202 inthe secondary positions 204B-D appearing in the background (looks likethey are behind and transitioning to a vanishing point from the mediaicon in the primary position). This effect may be achieved by reducingthe size of the media icons 202 when they are in the secondary positions204B-D and further making the media icons 202 become smaller and smallerthe further the media icons 202 are from the primary position 204A inthe visual plane. For example, the secondary position(s) 204C that isfurthest from the primary position along the vertical is located at thehorizon line of the visual plane and therefore is the smallest. Whenfollowing these rules, a worms eye view (the visual angle of the viewerbeing low) will be created when the primary position 204A is at thehighest point on the path 206, and a birds eye view (the visual angle ofthe viewer being raised) will be created when the primary position 204Ais at the lowest point on the path 206 (as shown). The depth of view ineither the worms eye view or birds eye view can be adjusted by alteringthe height of the oval path. A larger depth of view will be created withan oval path having a larger height, and a smaller depth of view will becreated with an oval path having a short height. By way of example, thevisual plane may be tilted between about 60 and 656 degrees.

In the illustrated embodiment for example the media icons 202 in thesecondary positions 204B and 204D to the left and right of the primaryposition 204A are made smaller than the media icon 202 in the primaryposition 204A, and the media icon 202 in the middle secondary position204C between the left and right secondary positions 204B and 204D ismade smaller than the media icons 202 to the left and right secondarypositions 204B and 204D. Put another way, the primary media icon is fullsized, the left and right media icons are medium size and the last mediaicon is small sized. In essence, when following the path, the mediaicons at the secondary positions get smaller the further they arelocated from the primary position.

Referring to FIGS. 6C-6H, when the media icons 202 are moved along thepath 206 from position to position, the sizes of the media icons 202change in accordance with the direction of movement and/or the resultantposition. For example, the media icons 202 decrease in size when movingaway from the primary position 204A, and increase in size when movingtowards the primary position 204A. The media icons 202 may start tochange their size at or anywhere between the last and next iconpositions. For example, the change may occur instantaneously once thenew position is reached or it may occur gradually from the time itleaves the last icon position to the time it reaches the new iconposition. The later is believed to be more fluid and dynamic and thus isthe preferred method, i.e., increasing or decreasing the size graduallyfrom one size to the other while the media icon is moved from oneposition to the other.

As shown in FIGS. 6C-6E, for each right command (e.g., each left clickof the navigation wheel on the remote control), the media icons 202 aremoved over one position, and as they do they change from large to mediumwhen going from primary position 204A to first secondary position 204Band from medium to small when going from first secondary position 204Bto second secondary position 204C. In addition, they change from smallto medium when going from the second secondary position 204C to thethird secondary position 204D, and from medium to large when going fromthe third secondary position 204D to the primary position 204A.

As shown in FIGS. 6F-6H, for each left command (e.g., each right clickof the navigation wheel on the remote control), the media icons 202 aremoved over one position, and as they do they change from small to mediumwhen going from the second secondary position 204C to the firstsecondary position 204B, and from medium to large when going from thefirst secondary position 204B to the primary position 204A. In addition,they change from large to medium when going from primary position 204Ato third secondary position 204D and from medium to small when goingfrom third secondary position 204D to second secondary position 204C.

Although not shown, in one embodiment, the media icons 202 may include areflected portion that extends downward from the base of the media icon202. The reflected portion may be created by making a copy of the mediaicon, cropping the copy of the media icon (e.g., shortening), verticallyflipping the cropped image, altering the transparency of the flippedimage from semi transparent at the top to fully transparent at thebottom (e.g., gradient), and attaching the top of the flipped image tothe bottom of the media icon. The reflected portion may be configured tochange as the icon is moved onto the screen as well as about thecarousel.

Method of Operating a Media Menu as a Carousel

FIG. 7. is a method 220 of operating a media menu as a media carousel,in accordance with one embodiment of the present invention. The method220 begins at block 222 where a closed path is provided around whichmedia icons of the media features move similar to a carousel (see FIG.6)

Thereafter, in block 224, a determination is made as to the mediafeatures to be presented in the media carousel. For example, the mediacarousel may include a default set of features or it may be programmable(e.g., a user selects features to be added to the media hub and theselection is reflected in the media carousel).

Following block 224, the method proceeds to block 226 where the iconpositions are set on the path. The positions are based on the number ofmedia features to be presented. In one implementation, the positions areplaced at equal distances from one another along the closed path. Theicon positions include at least a primary position and one or moresecondary positions. The primary position is typically positioned in thecenter of the screen although this is not a requirement.

Following block 226, the method proceeds to block 228 where media iconsof the media features are placed (presented) at each of the iconpositions along the closed path. The media icon placed at the primaryposition is made full size. The media icons placed at the secondarypositions are made smaller than full size. In fact, the media icons aremade smaller and smaller the further they get from the primary positionalong the closed path.

Following block 228, the method proceeds to simultaneously occurringblocks 230 and 232. In block 230, the media icons are moved as a groupone position when a navigation command is received. The navigationcommand may for example be generated by a navigation pad of a remotecontrol. The direction of movement is typically based on the directionsupplied by the navigation command. If the navigation command supplies aleft directional indicator, the media icons move counterclockwise fromone position to the next. If the navigation command supplies a rightdirectional indicator, the media icons move clockwise from one positionto the next. In block 232, the size of the media icons are adjusted asthey are moved between positions. The size of the media icons arereduced the further they are moved away from the primary position alongthe close path, and increased the closer they are moved towards theprimary position along the closed path.

Method of Transitioning to a Media Carousel from an Open Window

FIG. 8 is a method 240 of transitioning to a media carousel from anapplication window, in accordance with one embodiment of the presentinvention. The method 240 begins at block 242 where a media carouselconfiguration is provided. The configuration may for example correspondto the carousel described in FIG. 6. As mentioned, the media carouselincludes a plurality of icons movably restrained to a prescribed closedpath. The icons move between positions including a primary position andone or more secondary positions.

In block 244, a media menu command is received. The command may forexample be generated by selecting the menu button on the remote controlshown in FIG. 2.

Following block 244, the method proceeds to block 246 where the currentwindow that is being displayed is faded off of the screen. The currentwindow may be associated with a desktop or other application that isbeing run. At the same time, the current window may be reduced in sizeand move upwards to the top of the screen. This sequence makes it appearas though the current window disappears into the background.

At the same time, in block 248, the media icons are sequentiallyintroduced into the screen (one after the other), and placed at thevarious icon positions on the prescribed closed path until all the iconpositions are filled. The icons are typically introduced one by one atequal intervals.

In one embodiment, the icons follow the same lead-in path as they areintroduced at the side of the screen and move to the closed path of themedia carousel.

In another embodiment, the icons follow separate lead in paths as theyare introduced from the side of the screen and move to the closed pathof the media carousel. Each path leads the icons to different iconpositions on the closed path of the carousel. The icon that is set to beplaced at the primary position follows a primary lead in path. The iconthat is set to be placed at the rightmost secondary position follows afirst secondary lead in path. The icon that is set to be placed at themiddle back secondary position follows a second secondary lead in path.The icon that is set to be placed at the leftmost secondary positionfollows a third secondary lead in path. The lead in paths may start atabout the same location at the same side of the screen. Alternatively,the lead in paths may start at different locations at the same side ofthe screen. Alternatively, the lead in paths may start at differentlocations at different sides of the screen.

In an embodiment, the amount of time it takes to remove the currentwindow is the same amount of time it takes to introduce all the mediaicons, i.e., removing the current window takes at about the same time asplacing all the media icons in their desired positions.

It should be appreciated that the transition between a carousel menu andthe current window (e.g., desktop) may be reversed when going from themedia carousel to the current window. For example, the media icons maybe sequentially removed from the screen (one after the other), and atthe same time the current window can be transitioned back into thescreen (e.g., fade in, increase size and move downward until windowfills screen).

Method of Sequentially Introducing Media Icons into a Screen

FIG. 9 is a method 250 of sequentially and continuously introducingmedia icons onto a screen, in accordance with one embodiment of thepresent invention. The method may for example correspond to block 248 ofFIG. 8. The method 250 generally begins at block 252 where the firstmedia icon is introduced into the screen from the side of the screen(see FIG. 10B). The side may be any side of the screen and may even be acorner. The first media icon is typically the media icon that will endup at the primary position.

Following block 252, the method proceeds to block 254 where the nextmedia icon is introduced into the screen from the side of the screenwhile the first media icon is continued to be moved to an entry positionon the media carousel (see FIG. 10C). The entry position is typicallythe furthest position from the primary position. This is typicallyaccomplished in a continuous motion. The first media icon follows a paththat eventually brings it to the entry position.

Following block 254, the method proceeds to block 256 where the nextmedia icon is introduced into the screen from the side of the screenwhile moving the first media icon to the entry position on theprescribed path of the carousel and while moving the second media icontowards the entry position on the media carousel (see FIG. 10D). This istypically accomplished in a continuous motion.

Following block 256, the method proceeds to block 258 where the nextmedia icon is introduced into the screen from the side of the screenwhile moving the first media icon to the next position on the prescribedpath of the carousel, the second media icon to the entry position on themedia carousel, and the third media icon towards the entry position onthe media carousel (see FIG. 10E). This is typically accomplished in acontinuous motion.

Following block 258, the method proceeds to block 260 where the aboveoperations are repeated until all the carousel positions are filled andthe first media icon is placed in the primary position on the carousel.For example, in the case of four media icons, the first media icon ismoved to the next position on the prescribed path of the carousel, thesecond media icon is moved to the next position on the media carousel,the third media icon is moved to the entry position on the mediacarousel, and the fourth media icon is moved towards the entry position(see FIG. 10F). Thereafter, the first media icon is moved to the nextposition on the prescribed path of the carousel (e.g., primaryposition), the second media icon is moved to the next position on themedia carousel, the third media icon is moved to the next position onthe media carousel, and the fourth media icon is moved to the entryposition (see FIG. 10G). Thereafter, the media carousel can be operatedas discussed in FIG. 7.

FIGS. 10A-10G are diagrams illustrating the method described in FIG. 9.FIG. 10A shows the prescribed path 206 of FIG. 6A along with a secondarypath 207. The media icons follow the secondary path when moving into thescreen and onto the prescribed path 206. That is, the secondary pathdelivers the media icons to the path 206 from the side of the screen.Like the carousel path 206, the secondary path may be displayed orhidden from view (preferred).

Once the sequence is started, the first icon is brought into view at theleft bottom corner of the screen (FIG. 10B). Thereafter, it follows thesecondary path 207 towards the entry position 204D and a second icon isbrought into view at the left bottom corner of the screen (FIG. 10C).Thereafter, the first icon reaches the entry position 204D of thecarousel 200 while the second icon moves towards the entry position 204Dand while a third icon is brought into view at the left bottom corner ofthe screen (FIG. 10D). Thereafter, the first icon moves to the nextposition 204C of the carousel 200 while the second icon moves into theentry position 204D, the third icon is moved towards the entry positionand a fourth icon is brought into view at the left bottom corner of thescreen (FIG. 10E). Thereafter, the first icon moves to the next position204B of the carousel 200, the second icon moves to the next position204C, the third icon moves into the entry position 204D and the fourthicon is moved towards the entry position 204D (FIG. 10F). Thereafter,the first icon moves to the next position 204A of the carousel 200, thesecond icon moves to the next position 204B, the third icon moves intothe next position 204C and the fourth icon moves into the entry position204D (FIG. 10G).

It should be appreciated that the sequence described above may bereversed when transitioning from the media carousel back to the currentwindow (e.g., desktop). Instead of entering the screen, the media iconsexit the screen following the same path as they entered. The onlydifference may be the order of the icons as their positions may havechanged since they entered the screen. The icon in the primary positionexits last and the icon at the rightmost secondary position exits first.Alternatively, a different secondary path may be used when exiting thecarousel. For example, the secondary path may be horizontally flippedsuch that the icons leave the opposite side of the screen. In thisembodiment, the icon in the primary position still exits last, however,the icon at the leftmost secondary position exits first.

FIG. 11 is a another method 261 of sequentially and continuouslyintroducing media icons onto a screen, in accordance with one embodimentof the present invention. The method may for example correspond to block248 of FIG. 8. The method is typically accomplished in a continuousmotion. The method 261 generally begins at block 262 where the firstmedia icon is introduced into the screen (see FIG. 12B). In most cases,the first media icon is the media icon that was at the primary positionwhen the menu was closed. Although, it should be noted that a defaultsetting could be used.

Following block 262, the method proceeds to block 264 where the nextmedia icon is introduced into the screen while the first media icon ismoved along a first path towards the primary position of the mediacarousel (see FIG. 12C).

Following block 264, the method proceeds to block 266 where the nextmedia icon is introduced into the screen while the first media icon ismoved further along the first path towards the primary position of themedia carousel and the second media icon is moved along a second pathtowards the rightmost secondary position of the media carousel (see FIG.12D). The second media icon may reduce in size as it moves along thepath from the edge of the screen to its secondary position.

Following block 266, the method proceeds to block 268 where the nextmedia icon is introduced into the screen while the first media icon ismoved further along the first path towards the primary position of themedia carousel, the second media icon is moved further along a secondpath towards the rightmost secondary position of the media carousel andthe third media icon is moved along a third path towards the middle backsecondary position of the media carousel (see FIG. 12E). The third mediaicon may reduce in size as it moves along the path from the edge of thescreen to its secondary position.

Following block 268, the method proceeds to block 270 where the firstmedia icon is moved further along the first path towards the primaryposition of the media carousel, the second media icon is moved furtheralong a second path towards the rightmost secondary position of themedia carousel, the third media icon is moved further along a third pathtowards the middle back secondary position of the media carousel, andthe fourth media icon is moved towards the leftmost secondary positionof the media carousel (see FIG. 12F). The second media icon may reducein size as it moves along the path from the edge of the screen to itssecondary position.

The media icons continue to move along their paths until each media iconreaches its destination on the media carousel. In fact, in oneembodiment, the media icons are configured to reach their destination atthe same time. This may be accomplished by adjusting the lengths of thepaths, the time when the media icons are introduced, and the speed ofthe media icons as they are moved along their paths.

FIGS. 12A-12F are diagrams illustrating the method described in FIG. 11.FIG. 12A shows the closed path 206 (See, FIG. 10A) of the media carouseland a plurality of lead in paths 207A, 207B, 207C and 207D. The lead inpaths 207A-207D direct the media icons 202 to the icon positions204A-204D on the closed path 206 of the media carousel 200. The lead inpaths 207A-207D are configured to make it appear as if the media icons202 are rotating or spiraling into position on the carousel 200(parading or marching into view). Like the carousel path 206, the leadin paths 207A-207D may be displayed or hidden from view (preferred).

The first lead in path 207A starts from the bottom of the screen nearthe bottom left corner, and ends at the primary position 204A on theclosed path 206. The first lead in path 207A may be somewhat arcuate andinclude a circular portion where the path 207A crosses over itselfbefore ending at the primary position 204A.

The second lead in path 207B starts from the bottom of the screen nearthe bottom left corner, and ends at the rightmost secondary position204D on the closed path 206. Like the first lead in path 207A, thesecond lead in path 207B may be somewhat arcuate. Furthermore, thesecond lead in path 207B is typically spaced apart and above the firstlead in path 207A.

The third lead in path 207C starts from the bottom of the screen nearthe bottom left corner, and ends at the middle secondary position 204Con the closed path 206. Like the first and second lead in paths, thethird lead in path 207C may be somewhat arcuate. Furthermore, the thirdlead in path 207C is typically spaced apart and above the second lead inpath 207B.

The fourth lead in path 207D starts from the bottom of the screen, andends at the leftmost secondary position 204B on the closed path 206.Like the rest of the lead in paths, the fourth lead in path 207D may besomewhat arcuate.

Furthermore, the fourth lead in path 207D typically crosses over thefirst and second lead in paths 207A and 207B.

As should be appreciated, the layout including the arcuate paths makethe icons appears as if they are entering the screen and rotating orspiraling clockwise into position in the carousel. Various paths may beused to provide the same effect.

Once the sequence is started, the first icon 202 is brought into view atthe left bottom corner of the screen (FIG. 12B). Thereafter, it followsthe first lead in path 207A and a second icon 202 is brought into viewat the left bottom corner of the screen (FIG. 12C).

Thereafter, the first icon 202 continues to follow the first lead inpath 207A while the second icon 202 follows the second lead in path 207Band while a third icon 202 is brought into view at the left bottomcorner of the screen (FIG. 12D).

Thereafter, the first icon 202 continues to travel along the first leadin path 207A, the second icon 202 continues to travel along the secondlead in path 207B, the third icon 202 follows the third lead in path207C and a fourth icon 202 is brought into view at the left bottomportion of the screen (FIG. 12E).

Thereafter, the first icon 202 moves to the primary position 204A, thesecond icon 202 moves to the rightmost secondary position 204D, thethird icon 202 moves to the middle secondary position 204C and thefourth icon 202 moves to the leftmost secondary position 204B (FIG.12F).

The sequence described above may be reversed when transitioning from themedia carousel back to the current window (e.g., desktop). Instead ofentering the screen, the media icons exit the screen following the samepaths as they entered. The only difference may be the order of the iconsas their positions may have changed since they entered the screen. Theicon in the primary position exits last and the icon at the leftmostsecondary position exits first. Alternatively, a different path may beused when exiting the carousel. For example, the paths may behorizontally flipped such that the icons leave the opposite side of thescreen. In this embodiment, the icon in the primary position still exitslast, however, the icon at the rightmost secondary position exits first.

Feature Menu

FIG. 13 is a diagram of a graphical user interface for a menu 280, inaccordance with one embodiment of the present invention. The menu 280provides a location where a user can browse through folders (or mediaitems) associated with a particular feature. The menu 280 may forexample be a feature menu or a submenu of the feature menu. The featuremenu is the screen that appears when the media icon isselected/activated from the carousel. The submenu is the screen thatappears when a folder is selected/activated from the feature menu.

The menu 280 includes a header 282 that provides information about themenu 280. For example, in the case of a feature menu, the header mayinclude a media icon 284 and a feature label 286. The media icon 284 isplaced next to the feature label 286, and together they are centered onthe screen. In the case of a submenu, the header 282 may include a titleor name of the submenu (which may be the name of the folder that wasactivated).

The menu 280 also includes a list of folders 288 (or media items)disposed underneath the header 282. The list 288 includes a collectionof folders 290 (or media items) that point to media files. The arrows292 next to the folders 290 indicate that the folders 290 contain mediafiles. A selector bar 294 is configured to traverse through the list offolders 288 so as to highlight one of the folders 290. That is, theselector bar 294 can be moved vertically from one folder to another(line by line). This may for example be accomplished with the remotecontrol by pressing the navigation pad up or down.

The menu 280 additionally includes a preview window 296 that allows auser to view the contents of the folder 290 that is highlighted with theselector bar 294. This enables a user to make better decisions whenselecting/activating a folder 290, i.e., the user can see the contentsand therefore decide if the folder is the desired folder for viewing.When a folder 290 is highlighted, the media files associated with thehighlighted folder are retrieved from the data store and played at thepreview window 296 (see FIG. 13A). When a new folder is highlighted, theprevious media files are stopped and the media files associated with thenewly highlighted folder are retrieved from the data store and played atthe preview window 296 (see FIGS. 1B and 13C). This may be implementedin a seamless continuous manner.

In one embodiment, the preview window 296 may be skewed in order to makeit look like it is extending from the foreground into the background.This effect may be created by lowering the top right corner and raisingthe bottom right corner of each frame of the media file as the mediafile is played.

In another embodiment, the preview window 296 may include a reflectedportion 298 that extends downward from the base of the frame 299. Thereflected portion 298 may be created by making a copy of the frame 299that is being played, cropping the copy of the frame (e.g., shortening),vertically flipping the cropped frame, altering the transparency of theflipped frame from semi transparent at the top to fully transparent atthe bottom (e.g., gradient), and attaching the top of the flipped frameto the bottom of the original frame. Thereafter, the combination may beskewed as mentioned above (and as shown).

Method of Presenting a Menu

FIG. 14 is a method 300 of presenting a menu, in accordance with oneembodiment of the present invention. The menu may for example correspondto the menu shown in FIG. 13. The method 300 starts at block 302 where amenu containing a list of media items and a selector bar that movesthrough and highlights one of the media items are presented.

If the highlighted media item contains or includes a link to an image,the method 300 proceeds to block 304 where the image associated with thehighlighted media item is placed in the on the screen next to the listof media items. This may include resizing the images to fit inside thedesired locations. This may also include reconfiguring the images tomeet a desired appearance (skewing). This may also include providing areflection of the image.

If the highlighted media item contains or includes a link to multipleimages (e.g., photo album), the method 300 proceeds to block 306 wherethe images associated with the highlighted media items are continuouslyand sequentially outputted on the screen one at a time next to the listof media items. This may include resizing the images to fit inside thedesired locations. This may also include reconfiguring the images tomeet a desired appearance (skewing). This may also include providing areflection of the image. In some cases, transition effects such as crossdissolve, fading, overlap, push and scale down may be used betweenimages. The display timing and transition effects between images may bewidely varied, and may be factory set and/or set via a control panel.

If the highlighted media item contains or includes a link to a videofile (e.g., consumer movie, home movie, trailer, music video), themethod 300 proceeds to block 308 where the playing video of the videofile is placed on the screen next to the list of media items. This mayinclude resizing the frames to fit inside the desired locations. Thismay also include reconfiguring the frames to meet a desired appearance(skewing). This may also include providing a reflection of the frames.

Following blocks 304-308, the media item is launched when thehighlighted media item is activated. For example, if the media item is aphoto album, the photo application is launched and the photo album isplayed in accordance with the photo application (e.g., iTunes). If themedia item is a movie, the video application is launched and the moviesis played in accordance with the video application (e.g., Quicktime).

Method of Previewing a Movie (or Photo Album)

FIG. 15 is a method 320 of previewing a movie or photo album, inaccordance with one embodiment of the present invention. The method 320begins at block 322 where a movie or photo album is retrieved.Thereafter, in block 324, the movie is played by the appropriateapplication. Thereafter, in block 326, each frame of the movie or eachimage of the photo album is transformed as the movie or photo album isplayed, but before it is displayed on the screen. In block 328, themovie is displayed using the transformed frames or images.

FIG. 16 is a method 330 of reflecting and skewing an input image, inaccordance with one embodiment of the present invention. The method 330may for example correspond to block 326 in FIG. 15.

The method 330 begins at block 332 where an input image is provided. Theinput image may for example be a frame of a movie or an image in a slideshow or photo album. The input image is typically provided while themovie or slide show is being played.

In block 334, the input image is darkened from the middle to the rightedge of the input image. The darkness follows a faded gradient that goesfrom left to right and that varies from lighter to darker. This makesthe image appear as if the right edge is further away from the viewer.

In block 336, the darkened input image is copied, and in block 338, thedarkened image is vertically flipped upside down.

In block 340, the bottom of the flipped image is cropped. The height ofthe cropped image is based on the desired height of the reflected image.The height is typically the maximum height that the reflected imageextends downward. In most cases, the height is less than the height ofthe original image. For example, the height may be less than about 50%the height of original image, and more particularly between about 50%and 40% of the height of the original image, and even more particularlyabout 40%.

In block 342, the cropped/flipped image from top edge to bottom edge isvaried from a low level of transparency (e.g., partially transparent) toa high level of transparency (e.g., fully transparent). In one example,the image is varied from a slight opaque color at the top of the image(70% opaque) to a fully transparent color at the bottom edge of theimage (0% opaque). This causes the image to gradually fade into thebackground color.

In block 344, the transparent image is combined with the base image(e.g., darkened). For example, the top edge of the flipped/transparentimage is attached to the bottom edge of the base image. Theflipped/transparent image provides the appearance of reflection to thebase image.

In block 346, the top right and bottom right corners of the combinedimage are skewed or moved towards each other thereby tapering the finalimage. That is, the top right corner is floated downward and the bottomright corner is floated upward. By way of example, the top right cornermay be dropped by about 8.5% and the bottom right corner may be raisedby about 14%. This completes the effect that makes the right edge of theimage look like its further away in space than the left edge.

Method of Transitioning from a Media Carousel to a Feature Menu

FIG. 17 is a method 350 of transitioning from a media carousel to afeature menu, in accordance with one embodiment of the presentinvention. The media carousel may for example correspond to the mediacarousel shown in FIG. 6 and the feature menu may correspond to the menushown in FIG. 11. The method is illustrated in FIGS. 18A-18D.

The method 350 beings at block 352 where a media carousel 200 isprovided on a screen (see FIG. 18A).

Following block 352, the method 350 proceeds to block 354 where afeature menu command is received. The feature menu command is configuredto initiate the opening of a feature menu. By way of example, thefeatures associated with the media icon 202 in the primary position 204Aof the media carousel 200 may be activated (Media icon #1 in FIGS.18A-D).

Following block 354, the method 350 proceeds to transition blocks356-358 where the screen is transitioned from a media carousel 200 to afeature menu 280. For example, the media carousel 200 is removed fromthe screen and the feature menu 280 is brought into the screen (seeFIGS. 18B-18D).

In block 356, the media icon 202 x and label 208 located in the primaryposition 204A of the carousel 200 is moved to a heading position 282 anda list of folders 288 is brought into view underneath the heading 282.

In block 358, the other media icons 202 y of the carousel 200 are movedinwardly towards the vertical center and upwardly towards the top of thescreen from their secondary positions 204B-D on the carousel 200. At thesame time, the remaining icons are slowly faded off of the screen.

In one embodiment, block 356 is implemented with a transition effectshown in simultaneously occurring blocks 360 and 362. Block 360 includesmoving the media icon 202 x located in the primary position 204A of themedia carousel 200 to the side the media label 208 while moving themedia label 208 (substantially front/center of screen) to the top ofscreen and decreasing the size of the media icon 202 x. At theconclusion of the transition (FIG. 18D), the media icon 202 x and label208 have about the same height. Block 362 includes introducing the listof folders 288 into the screen from the bottom of the screen. The listof folders 288 enters the bottom of the screen (FIG. 18B) and movesupward to a point underneath the heading 282 (FIGS. 18C and 18D).Alternatively, the list of folders may be introduced via a fadingeffect.

Feature Folder

FIGS. 19A-19E are diagrams of a feature folder 380, in accordance withone embodiment of the present invention. The feature folder 380 may forexample correspond to the folder 118 shown in FIG. 4.

As shown, the feature folder 380 includes a plurality of thumbnailimages or icons 382. Each thumbnail image 382 represents a particularmedia file. When the thumbnail image 382 is selected and activated, themedia application associated with the media file is launched and themedia file is played and outputted based on the media application. Themedia files may be associated with all sorts of media including but notlimited to photos, videos, DVD, music, TV, etc. In the case of photos,the thumbnail image may be individual photos or cover photos for a photoalbum. In the case of videos, the thumbnail images may be movie posters,or album art of a music video. In the case of music, the thumbnailimages may be album art. In the case of TV, the thumbnail images may beTV characters, TV scenes or TV posters.

The layout and configuration of the thumbnail images may be widelyvaried. Referring to FIG. 19B, the thumbnail images 382 may be placed inpreset rows 384 and at preset positions 386 within the rows. The numberof preset positions 386 generally corresponds to the size of images andthe width of the window or screen. Furthermore, the preset positions 386may be positioned anywhere on the row 384, although in the preferredembodiment, the present positions 386 are substantially equally spacedalong the row 384. The number of rows 384 generally correspond to thetotal number of images 382 to be presented, and the number of positionsallowed in each row 384. The thumbnail images can be placed in rowsusing variety of criteria including for example alphabetically,category, rating, type, etc.

Referring to FIGS. 19C-19D, the rows of thumbnail images are configuredto vertically move on and off screen and from one preset row 384 to thenext preset row 384. For example, when a navigation command is received,the rows of thumbnail images are all moved up or down one position. Thatis, they move as group in the vertical direction and stop when they allhave shifted to the next preset row. Depending on the direction ofmovement, either the top row or bottom row is moved off screen therebyallowing a new row to move on screen. If the navigation command is an upcommand, the rows of thumbnail images typically move downwards oneposition such that the bottom row moves off and a new top row isintroduced. If the navigation command is a down command, the rows ofthumbnail images move upwards one position such that the top row movesoff and a new bottom row is introduced.

The feature folder may include a primary row 384A and one or moresecondary rows 384B and 384C. The primary row 384A is the location wherethe thumbnail images can be selected and activated. The secondary rowsare holding positions, and the thumbnail images located therein arelocked from activation. In the instant case, the primary row is thecenter row, although that is not a requirement.

In order to select images inside the primary row, the feature folderfurther includes a slider that is only located in the primary row. Asshown in FIGS. 19E and 19F, the slider is configured to movehorizontally inside the primary row from one preset position to theother. The slider is configured to highlight the thumbnail image to beselected. That is, the highlighted thumbnail image will be the mediafile that is launched if an activation signal is provided. The slidermay be widely varied. In the illustrated embodiment, the slider isembodied as a border that surrounds the thumbnail image.

In one embodiment, the title of the thumbnail image appears in a header390 when the thumbnail image is highlighted. For example, the label“Title 2C” appears inside the header 390 when the image 388 2C ishighlighted (as shown in FIG. 19B), the label “Title 3C” appears insidethe header 390 when the image 388 3C is highlighted (as shown in FIG.19C), the label “Title 3B” appears inside the header when the image 3883B is highlighted (as shown in FIG. 19D), the label “Title 3D” appearsinside the header 390 when the image 388 3D is highlighted (as shown inFIG. 19E). The title may for example correspond to the title of themovie, song, music video, photo album or the like. Other information 392relating to the highlighted thumbnail image or the media file associatedtherewith may also be presented in the header 390. For example, in thecase of a movie or movie trailer, the movie rating may be placed in onecorner, and the media icon associated with the feature of the featuremenu may be placed in the opposite corner. Alternatively, instead of atitle, other information relating to the thumbnail image may be given asfor example actors, director, artist, etc.

Method of Displaying Media and Traversing Through the Displayed Media(Trailers)

FIG. 20 is a method 420 of displaying media and traversing through thedisplayed media, in accordance with one embodiment of the presentinvention. The method includes block 422 where a list of folders aredisplayed (see for example FIG. 4 or FIG. 13).

Following block 422, the method proceeds to block 424 where a mediaactivation command is received. The command indicates the folder to beopened. For example, a folder is highlighted with a selector bar, andactivated with a button click from a remote control.

Following block 424, the method proceeds to block 426 where thumbnailimages representing data files contained in the folder are retrieved.For example, they may be retrieved from a local data store or a remotedata store (e.g., internet).

Thereafter, in block 428, the thumbnail images are placed in layeredrows (e.g., row disposed over row). The images are typically placed atspecific positions inside the rows. The number of positions in each rowgenerally depends on the size of the thumbnail images and the width ofthe window or screen in which the thumbnail images will be viewed (e.g.,width of screen).

Following block 428, the method proceeds to block 430 where some of thelayered rows are initially displayed. The displayed rows are typicallyseated at specific lines or row positions inside the window. Theremaining rows are not displayed, and remain off screen. The number ofspecific lines typically depends on the height of the images and theheight of the window. The rows are configured to move vertically up anddown so that rows currently outside of the viewing area can be seen. Inmost cases, as a row is moved out of the viewing area, the next row inthe sequence of rows appears inside the viewing area.

At the same time, in block 432, a slider is displayed at one of thespecified lines or row positions and at one of the image positionsinside the row. In one embodiment, the slider is vertically fixed at thespecific line or row, i.e., stays at the specified row position and doesnot move vertically. The slider does however move horizontally withinthe specific row from one image to the other. The slider can thereforebe used to highlight any of the images found in the row.

If a vertical scroll command is received, the method proceeds to block434 where the rows are vertically moved in accordance with the verticalscroll command. For example, when a user scrolls down, a new row appearsat the bottom of the viewing area and all other rows move up oneposition. If the viewing area is full (specified rows), the top rowmoves out of the viewing area. Similarly, when a user scrolls up, eachnew row appears at the top of the viewing area and all other rows movedown one position. If the viewing area is full, the bottom row moves outof the viewing area.

If a horizontal command is received, the method proceeds to block 436where the slider is moved in accordance with horizontal scroll command.For example, when a user scrolls left, the slider moves over oneposition to the left, and when the user scrolls right, the slider movesover one position to the right.

If an activation command is received, the method proceeds to block 438where the media file associated with the highlighted thumbnail image isopened. For example, a media application capable of playing the mediaitem is launched, the media data associated with the media item isretrieved and thereafter the media data is played and outputted on thescreen. The media data may for example be retrieved from a local datastore or a data store located at a remote location (e.g., internet,network, etc.).

Sleeve

FIGS. 21A-21F are diagrams of a slider 440 for browsing through a groupof images (media items), in accordance with one embodiment of thepresent invention. The slider may for example correspond to the slidershown in FIG. 19. In this particular embodiment, the slider 440 isconfigured as a sleeve that includes an upper layer 442 and a lowerlayer 444. The upper and lower layers 442 and 444 are an integral unitthat move together to highlight a thumbnail image 446. The upper layer442 slides over the top of the thumbnail image 446 and the lower layer444 slides under the thumbnail image 446. Furthermore, the lower layer444 slides over the background image 448.

As shown in the various figures, the upper layer 442 is embodied as aborder 443 that surrounds the image 446 so that the image 446 can beviewed. The lower layer 444 is embodied as a full sheet 445 with similarouter dimensions as the border 443. The border 443 is generally sized tobe larger than the image 446 thereby creating a gap 450 between theouter edge of the image 446 and the inside edge of the border 443. Thegap 450 allows the sheet 445 to be seen. The lower sheet 445 may besolid opaque surface that covers and blocks the background 448 oralternatively the lower sheet 445 may be semi transparent. By being semitransparent the background can be seen through the lower sheet. Becauseits semi transparent, the color of the lower sheet 445 blends with thecolor of the background 448 and therefore the region where the lowersheet overlays the background is different than the rest of thebackground. Some may say that the lower sheet produces a tinting orshadow effect over the background.

Method of Transitioning Between a Feature Menu and an Application WindowAssociated with the Feature Menu (DVD)

FIG. 22 is a method 460 of transitioning between a feature menu and anapplication menu associated with the feature menu, in accordance withone embodiment of the present invention. The feature menu may forexample correspond to a DVD feature menu (see FIG. 4) and theapplication menu may be the main menu of the DVD that is being played.

The method 460 includes, in a first state (block 462), presenting afeature menu in the foreground, and blurring and placing the applicationmenu in the background. See for example FIG. 23A, which shows a featuremenu 480 in the foreground and a blurred application window 482 in thebackground.

The method 460 also includes, in a second state (block 466), presentingthe application window clearly in the foreground, and removing thefeature menu from the screen. See for example FIG. 23C, which shows anapplication window 482 in the foreground and no feature menu 480.

The method also includes (block 464), performing a transition effectwhen transitioning between the first and the second states (blocks 462and 466). When transitioning from the first state to the second state,as for example when the application menu option is selected andactivated, the transition effect (block 464) includes fading out thefeature menu 480 off of the screen, and at the same time and in acontinuous manner focusing the blurred application window 482 so that itis un-blurred and clearly visible in the foreground. See for exampleFIGS. 23B and 23C. In FIG. 23B, the feature menu 480 is partially faded(partially transparent) and the application window 482 is partiallyblurred. In FIG. 23C, the feature menu 480 has disappeared and theapplication is no longer blurred (focused).

When transitioning from the second state to the first state, as forexample when the menu button on the remote control is activated, thetransition effect works in reverse. The reverse transition effect (block464) includes fading the feature menu 480 into the screen so that thefeature menu is in the foreground, and at the same time, continuouslyblurring and placing the application window 482 in the background. Seefor example FIGS. 23B and 23A. In FIG. 23B, the feature menu 480 ispartially faded (partially transparent) and the application window 482is partially blurred. In FIG. 23A, the feature menu 480 is in full view(no longer transparent) and the application window 482 is fully blurredbehind the feature menu 480.

Method of Superimposing an Overlay over a DVD

FIG. 24 is a method 500 of superimposing an overlay over an applicationwindow, in accordance with one embodiment of the present invention. Themethod is generally performed in an environment where a media hub isloaded over a media application (e.g., DVD application), and the mediaapplication has been instructed to play, and is playing a media file(e.g., DVD movie). The playback may have been implemented via the DVDfeature menu of the media hub (e.g., selecting and activating the STARTMOVIE control option in the DVD feature menu) or alternatively the mainmenu of the DVD (e.g., selecting and activating the START MOVIE controloption in the main menu).

In block 502, if a volume control command is received at the media hub,the volume control data associated with the command is sent to mediaapplication so that the volume can be changed in accordance with thevolume control command.

In block 504, the media hub generates a volume indicator andsuperimposes the volume indicator over the playing movie. The volumeindicator includes a border and an indicator bar that fills the borderaccording to the current volume setting, i.e., the border is more filledwhen the setting is high and less filled when the setting is low. Atransition effect such as fading in may be used when bringing the volumeindicator into view. The volume indicator remains displayed for a presetamount of time after the volume command is received. Once the time isover, the volume indicator is removed from the screen. If multiplecommands are received within the preset amount of time, then the timeout starts from the last command received. A transition effect such asfading out may be used when the volume indicator is removed from thescreen. The volume indicator may be similar to the volume indicatorshown in FIG. 31B.

In block 506, if a playback command is received at the media hub, theplayback data associated with the command is sent to media applicationso that the playing movie can be changed in accordance with the playbackcommand (e.g., play, pause, skip, chapter ahead, etc.).

In block 508, the media hub generates a chapter play head andsuperimposes the chapter play head over the playing movie. A transitioneffect such as fading in may be used when bringing the chapter play headinto view. The chapter play head includes a border and a slidingindicator (e.g., diamond) that moves horizontally within the border. Theposition of the sliding indicator indicates where the movie is currentlyplaying relative to the entire movie. The chapter play head mayadditionally include a chapter label centered over the slidingindicator. The chapter label includes the current and total number ofchapters, and moves with the sliding indicator. The current chapter ofthe chapter label may be configured to change in accordance with thecurrent chapter. The chapter play head remains displayed for a presetamount of time after the playback command is received. If multiplecommands are received, then the time out starts from the last commandreceived. A transition effect such as fading out may be used when thetime out is reached. The chapter playhead may be similar to chapterplayhead shown in FIG. 31C with the exception that the chapter play headof the described embodiment additionally includes a chapter labeldisposed above the diamond.

Method of Implementing a Virtual Chapter Mark (DVD)

Another aspect of the invention pertains to intelligent navigation ofsequential media content. In one embodiment, the intelligent navigationallows a user to skip forward or backward through the sequential mediacontent. For example, a user can signal a media control center via aremote controller to inform a media playback application to skip forwardor backward. Typically, the sequential media content will have chapterpositions and enable a user to sequentially transition to the beginningof chapters (e.g., using a next or previous command on a remotecontroller). The intelligent navigation allows a user to transition tochapters while also remembering its initial transition point inside thechapter so that the user can decide to transition back to the initialtransition point. This initial transition point can be referred to as avirtual chapter. The media control center can maintain one or morevirtual chapters to provide users with an intelligent navigationexperience.

FIG. 25A is a flow diagram of a media play process 550 according to oneembodiment of the invention. The media play process 550 is, for example,performed by a media control center in response to user input commands.In one embodiment, the user input commands can be provided by a remotecontroller that wirelessly communicates with the media control center.

The media play process 550 initially plays 552 sequential media contentat an initial frame. Namely, in response to a play request from a user,the media control center will instruct a media playback application tobegin playing the sequential media content at the initial frame. As anexample, the sequential media content can pertain to a DVD movie and themedia playback application can pertain to a DVD player that operates ona computer, such as a multimedia computer. While the sequential mediacontent is being played by the media playback application, the user caninstruct the media control center to jump to another location within thesequential media content and continue playing therefrom. In such case,the media playback application is instructed 554 to start playing at anew frame. The new frame can be identified by a frame indicator, such asa chapter marker, or can be indicated by a timer offset relative toeither a frame or the start of the sequential media content. Inaddition, the media control center marks 556 a current frame where themedia playback application was operating when the user requested to jumpto another location (e.g., new frame). After the media playbackapplication has been instructed 554 and the current frame has beenmarked 556, the sequential media content is played 558 by the mediaplayback application starting at the new frame. In effect, the mediaplayback has jumped from the current frame to a new frame. As oneexample, the new frame is the beginning of an adjacent chapter.Thereafter, a user can instruct the media control center to resume orreset its play position to a prior frame, namely, the current frame thatwas marked 556. In such case, the media playback application isinstructed 560 to reset to the previously marked current frame. Then,the sequential media content is played 562 starting at the previouslymarked current frame. Here, the media play back is effectively resumingat the point where playing previously left off. At this point, thesequential media content can continuously play until all of the mediacontent has been played. At which point, the media play process 550ends.

FIG. 25B is a flow diagram of a media navigation process 600 accordingto one embodiment of the invention. The media navigation process 600provides intelligent navigation through sequential media content. In oneimplementation, the media play process 600 can be performed by a mediacontrol center.

The media navigation process 600 begins with a decision 602 thatdetermines whether a play request has been received. For example, in oneembodiment, a user can initiate a play request by way of a remotecontroller. However, in other embodiments, a user can initiate a playrequest by way of a keyboard, a mouse, or other user input device. Uponreceiving the play request, media data of a media item associated withthe play request can start to be played 604. The media data of the mediaitem is played by a media playback application. The media item can alsoseparate the media data include a series of chapters. Next, a decision606 determines whether a chapter navigation input has been receivedduring the playing of the media data of the media item. The chapternavigation input is a user request via a remote controller or otherinput devices as noted previously. For example, a chapter navigationinput can pertain to a next chapter input or a previous chapter input.When the decision 606 determines that a chapter navigation input hasbeen received, then a current position within the media data of themedia item is saved 608 as a virtual chapter. Here, at the point atwhich the navigation input is received, the playing of the media data isnormally at a random position within a chapter. Hence, the currentposition is saved as a virtual chapter. This subsequently allows thecurrent position to be returned to in response to a chapter navigationinput. The current position being saved 608 as a virtual chapter can besaved as a time offset relative to the media item (e.g., from beginningof a chapter or from start of the media item).

After the current position has been saved 608 as a virtual chapter, theplaying of the media data of the media item jumps 610 to a next chapter.The next chapter can be either in a forward direction or a reversedirection, depending upon the chapter navigation input by the user. Inaddition, the next chapter can be an actual chapter of the media datafor the media item or can be a virtual chapter such as stored at block608. As such, in some cases, the play position for the media data jumpsto a virtual chapter which represents a prior current position fromwhich a chapter navigation previously navigated from.

Following the block 610, or following the decision 606 when a chapternavigation input has not been received, a decision 612 determineswhether the media navigation process 600 should end. The medianavigation process 600 can end upon request from a user request or uponcompletion of playing of the media data of the media item. When thedecision 612 determines that the media navigation process 600 should notend, the media navigation process 600 returns to repeat the decision 606to allow for additional chapter navigation as well as playing of theremaining portion of the media data of the media item. On the otherhand, when the decision 612 determines that the media navigation process600 should end, the media navigation process 600 ends.

FIGS. 25C and 25D help illustrate the use of virtual chapters accordingto one representative example of one embodiment of the invention. Inthis example, the virtual chapter is stored and then subsequentlyutilized to provide an intelligent return to the prior position at whichthe user had not yet watched or heard the media data of the media itembeing played. In one embodiment, this representative example can beconsidered an intelligent rewind operation.

FIG. 25C illustrates a table 620 that contains four sequential userinputs and their associated commands. These commands, in one example,are provided by a user interacting with a remote controller. The remotecontroller sends these commands to a media control center, whichforwards the commands to a media playback application that is playing asequential media item. FIG. 25D illustrates a timeline 640 for playingof a sequential media item 642 having a plurality of predeterminedchapters. The sequential media item 642 includes chapter 1 (CH1),chapter 2 (CH2), chapter 3 (CH3), chapter 4 (CH4), etc. The timeline 640indicates the time at which the four sequential user inputs indicated inthe table 620 were input. The first command is a “play” command andcauses the sequential media item to begin being played at chapter 1. Thesequential media item continues to be played in this example untilpartially into playing chapter 2. At this point, the user inputs asecond command, a “next” command. In response to the next command, themedia control center operates to save the current position (associatedwith its offset position into chapter 2) as a virtual chapter 640, andthen causes playing of the media data to jump to and proceed at thebeginning of chapter 3. The playing of the media data continues playingthrough chapter 3 until a third user input, which occurs partway throughplaying chapter 3. The third user input is a “back” command. The mediacontrol center receives the “back” command and causes the media playbackapplication to jump to the beginning of chapter 3 where it wouldcontinue to play forward from that point. However, in this example, itis assumed that very soon after the third command was input, the fourthcommand was input, which is also a “back” command. In response to thefourth command, the media control center informs the media playbackapplication to return to the position associated with the virtualchapter, and from that point begin playing forward. Here, as illustratedin FIG. 25D, the playing begins at the virtual chapter 640. In otherwords, the user played a portion of the media data, skipped forward toanother chapter, watched that chapter for a period of time, and thendecided to return back to the position from which they originally jumpedforward from. As a result, the user is effectively able to return backto the position where media data has not been played for the user.Conventionally, the user would have to return back to the beginning ofone of the chapters, and as a result, would have to view media data theyhad already viewed.

In general, the media play process 550 or the media navigation process600 can store and utilize more than one virtual chapter. Also, theprocessing could impose a minimum between chapters, so that virtualchapter would not be created until a meaningful separation is presentfrom an existing chapter.

In an embodiment, as part of a first “back” command, the system would goto the virtual chapter mark rather than the beginning of the currentchapter.

In an embodiment, in response to a “back” or “next” command, the systemwould present a list of choices for user selection, the list containingpredetermined marks, e.g. original chapter marks, and one or morevirtual chapter marks, e.g. dynamically created chapter marks.

In an embodiment, the user interface is configured so that virtualchapter marks can be set without using the “next” command. For example,a “set virtual chapter mark” command would allow the user to mark alocation without disrupting the flow of the movie.

It should be noted that the concept of virtual chapters is not limitedto multimedia control centers and further DVD movies, and that anydigital video presentation program or system can be configured withvirtual chaptering.

FIG. 26A is a method 700 of operating a DVD player, in accordance withone embodiment of the present invention. The method 700 begins at block702 where a main menu is presented. The main menu may for example be themedia carousel described in FIG. 6 and/or 25. In this embodiment, themain menu includes at least a DVD feature. In block 704, a determinationis made as to whether or not the DVD feature has beenselected/activated. If it is not selected, the method remains at block702. If selected/activated, the method proceeds to block 706 where adetermination is made as to whether or not a DVD is inserted in the DVDdrive. If there is no DVD, the method proceeds to block 708 where theuser is prompted to insert a DVD in the DVD drive. If there is a DVD,the method proceeds to block 710 where the DVD is loaded (e.g., spins upthe DVD drive and reads the DVD).

Thereafter in block 712, the DVD menu is integrated with the DVD featuremenu. In particular, the DVD feature menu is placed in the foregroundand the DVD menu is placed in the background. Further, the DVD menu isblurred. The DVD feature menu includes various control options includingbegin playing DVD, resume playing DVD, DVD menu, etc. Thereafter inblock 714, a determination is made as to whether the DVD menu has beenselected/activated. If selected/activated, the method proceeds to block716 where the DVD menu is presented. This may for example includeplacing the DVD menu in the foreground, and more particularly focusingthe DVD menu so that it is no longer blurred. Moreover, the DVD featuremenu is typically removed (e.g., faded out).

Following block 716, the method proceeds to block 718 where adetermination is made as to whether or not the menu button on a remotecontrol is pressed (see FIG. 2). If the menu button has been pressed,the method proceeds back to block 712. If the menu button has not beenpressed, the method proceeds to block 720 where a determination is madeas to whether or not a DVD play feature has been selected/activated. Forexample, the user, using the remote control, traverses through the DVDcontrol options of the DVD menu using the up/down/left/right buttons andhighlights the play control and thereafter presses play/pause button onthe remote control. If it has not been selected, the method proceedsback to block 718. If it has been selected/activated, the methodproceeds to block 722 where a DVD is presented. For example, the DVDmenu is removed and the movie is outputted on the screen.

Going back to block 714, if the DVD menu is not selected, the methodproceeds to block 724 where a determination is made as to whether or nota DVD play control has been selected/activated. This may be accomplishedby highlighting the Begin playing or resume playing movie option on theDVD feature menu, and thereafter pressing the play/pause button on theremote control. If the play control is not selected, the method proceedsback to block 712. If the play control is selected/activated, the methodproceeds to block 722 where the DVD movie is presented. For example, theDVD feature menu is removed and the movie is outputted on the screen.Following block 722, the method proceeds to block 726 where adetermination is made as to whether or not the menu button on the remotecontrol is pressed. If the button has not been pressed, the methodcontinues to output the movie. If the button has been pressed, themethod proceeds to block 728 where the DVD movie is stopped and thelocation of the movie is retained for future use.

Thereafter, in block 730, the method includes going back to a menu. Inone embodiment, the method includes going back to the DVD menu. Inanother embodiment, the method include going back to the DVD featuremenu. In yet another embodiment, the method includes making adetermination as to which menu instructed the movie to play, and thengoing back to the menu that instructed the movie to play. For example,if the method flowed through block 724, the method includes going backto block 712, and if the method flowed through block 720, the methodincludes going back to block 716.

One advantage of this method is the ability to navigate both sets ofmenus with a single menu button on a remote control. Conventional knowhow would use two dedicated buttons for these two tasks. This however,would confuse the user as they would be unsure which button does what.

FIG. 26B is a method 750 of operating a DVD player, in accordance withone embodiment of the present invention. Method 750 may for examplestart from block 730 in FIG. 26A. In block 752, the DVD menu ispresented after stopping the movie. Thereafter, in block 754, adetermination is made as to whether or not the menu button on the remotecontrol is pressed. If pressed, the method proceeds to block 758 wherethe DVD feature menu and DVD menu are integrated and presented. If notpressed, the method proceeds to block 756 where a determination is madeas to whether or not a DVD play control has been selected/activated. Ifso, the method proceeds to block 770 where the movie resumes playing atthe last marked location. If not, the method proceeds back to block 752.

Following block 758, the method proceeds to block 760 where adetermination is made as to whether or not the menu button has beenpressed. If pressed, the method proceeds to block 762 where the mainmenu is presented. Thereafter in block 764 a determination is made as towhether or not a DVD feature has been selected/activated. If so, themethod proceeds back to block 758. If not, the method proceeds back toblock 762. If the menu button is not pressed in block 760, the methodproceeds to block 766 where a determination is made as to whether or nota DVD play control has been selected/activated. If so, the methodproceeds to block 770 where the movie resumes playing at the last markedlocation. If not, the method proceeds back to block 752. If not, themethod proceeds to block 768 where a determination is made as to whetheror not the DVD menu has been selected. If so, the method proceeds toblock 752. If not, the method proceeds back to block 758.

As should be appreciated, as shown by this method, the virtual chapteris retained in all the various menus. This includes the other mediafeature menus. The user therefore can resume playing the movie even ifthey exit the DVD menus and enter the music, photo or video menus.

GUI Examples

FIGS. 27-37 show exemplary GUIs representing various layers of amultimedia control center, in accordance with several embodiments of thepresent invention.

FIGS. 27A-27D are diagrams of a media carousel. The media carousel mayfunction similarly to the media carousel described in FIG. 6. The mediacarousel includes four media icons including a DVD icon, a Photo icon, aMusic icon, and a Video icon that rotate around an invisible path. Thebackground is graded from darker at the top to lighter at the bottom inorder to further enhance the perspective. FIG. 27A shows the DVD icon inthe primary position on the path. FIG. 27B shows the Video icon in theprimary position on the carousel. FIG. 27C shows the Music icon in theprimary position on the carousel. FIG. 27D shows the Photo icon in theprimary position on the path.

FIGS. 28A-28E are diagrams of a media carousel transitioning from anapplication window. The transition may function similarly to the mediacarousel described in FIGS. 11-12. As shown, the application windowslowly disappears out of the screen while the media icons are marchedinto the screen one by one to the positions on the carousel.

FIGS. 29A-C are diagrams of a music feature menu. The music feature menucomes into view when the music icon on the carousel is activated.Several shots are given in order to show all the media items and controloptions. When the highlight bar reaches the bottom item, and the screenis full of media items, the top media item moves off screen therebyallowing a new media item to move on screen.

FIG. 30 is a diagram of a playlist folder. The playlist folder comesinto view when the playlist item on the music feature menu is activated.The playlist includes a list of playlists, which are a collection ofpre-selected songs, and a highlight bar for traversing through the listof playlists.

FIGS. 31A-31C are various diagrams of a now playing window. The nowplaying window includes information about the song. The information mayinclude for example song title, artist, and album title. The informationmay also include album art (FIGS. 31B and 31C). The now playing windowmay additionally include indicators associated with the song beingplayed. FIG. 31B shows an example of a volume indicator. FIG. 31C showsan example of a playback indicator. The volume indicator may appear whenprompted and disappear after a fixed amount of time (time out). Theplayback indicator may be present except for when the volume indicatoris presented.

FIG. 32 is a diagram of a photo feature menu. The photo feature menucomes into view when the photo icon on the carousel is activated. Thephoto feature menu includes a list of photo folders that contain images.The folders may for example include an entire library of images (e.g.,library), or collections of images from the library (e.g., last roll,last 12 months or photo albums). The photo feature menu also includes ahighlight bar for traversing through the list of photo folders. When afolder is highlighted and thereafter activated the images in the foldersare presented by way of a slide show via a photo management program. Thephoto feature menu also includes an area for outputting the images inthe highlighted folder. The outputted images may include a reflectionand may be skewed (as shown).

FIG. 33 is a diagram of a video feature menu. The video feature menucomes into view when the video icon on the carousel is activated. Thevideo feature menu includes a list of different video folders. The videofolders contain a collection of videos. In the illustrated embodiment,the folders include MY MOVIES, MOVIE TRAILERS, and MUSIC VIDEOS. MYMOVIES contains downloaded and or home movies. MOVIE TRAILERS includepointers to movie trailers that may be stored locally or remotely on anetwork. MUSIC VIDEOS contain downloaded music videos. The GUI includesa selector bar that highlights one of the folders. During operation, theselector bar can be moved vertically from one video folder to another.

FIG. 34 is a diagram of a video folder (My Movies). The video foldercomes into view when the My Movies video folder of the video featuremenu is activated. The video folder contains a list of video files thatcan be highlighted with a selector bar. The video folder also includesan area for outputting the highlighted video file. The outputted videomay include a reflection and may be skewed (as shown).

FIGS. 35A-35C are a diagram of a video folder (Movie Trailers). Thevideo folder comes into view when the Movie Trailers video folder of thevideo feature menu is activated. The video folder includes a pluralityof thumbnail images. Each thumbnail image represents a particular movietrailer. By way of example, the thumbnail image may be based on themovie poster. When the thumbnail image is selected and activated, avideo application is launched, the movie file associated with the movietrailer is retrieved from a data store, and the movie file is played andoutputted based on the video application. In one embodiment, thethumbnail images and movie files associated therewith are retrieved froma remote data store, which may for example be part of a web site. Inorder to select images inside the rows of thumbnail images, the videofolder further includes a slider that is restrained in the center row.The slider is configured to move horizontally inside the primary rowfrom one preset position to the other. The slider is configured tohighlight the thumbnail image to be selected. That is, the highlightedthumbnail image will be the media file that is launched if an activationsignal is provided.

FIG. 36 is a diagram of a DVD feature menu. The DVD feature menu comesinto view when the DVD icon on the carousel is activated. The DVDfeature menu includes a list of different DVD control options includingfro example resume playing, start from the beginning, eject disc, DVDmenu and muting off. The DVD feature menu also includes a selector barthat highlights one of the control options. During operation, theselector bar can be moved vertically from one video control options toanother. The DVD feature menu additionally includes the DVD menu fromthe DVD in the background behind the elements of the DVD feature menu.The DVD menu is also blurred.

FIG. 37A-37E is a diagram of transitioning from a media carousel to aVideo feature menu. As shown in these diagrams, when a feature isselected/activated, the media icon and media label in the primaryposition moves upward. The media icon also shrinks and moves to the sideof the media label. In addition, a list of media items is brought intoview from the bottom of screen. The list of media items follows themedia label and media icon upwards. A line is also brought into view andmoved upwards just underneath the media label and media icon. This formsthe header of the Video feature menu.

Although not shown in the Figures, the GUIs may additionally include asong folder. The song folder comes into view when the song item on themusic feature menu or one of the playlist items in the playlist folderis activated. The song folder includes a list of songs and a highlightbar for traversing through the list of songs. When a song is highlightedand thereafter activated the song is played by a music managementprogram and a now playing window is brought into view on the screen.

While this invention has been described in terms of several preferredembodiments, there are alterations, permutations, and equivalents, whichfall within the scope of this invention. For example, although theinvention was primarily described as being controlled with a remotecontrol, it should be understood that this is not a limitation and thatother input means of a computer system may be used (e.g., keyboard,touch screen, etc.). In addition, although several examples ofintroducing media items onto a screen were given, it should be notedthat other paths may be followed including for example paths that makemultiple passes around the carousel before finally ending up on thecarousel, or paths that connect the left bottom corner to the leftmostsecondary position of the media carousel (or vice versa). Other examplesinclude paths that start at different sides and end at different iconpositions. It should also be noted that any of the paths given may berotated or flipped (horizontally, vertically, etc.) in order to arriveat different entries. Moreover, the media icons may be moved about anaxis as they moved along the path (e.g., do not have to stay upright) inone example, the media icons may spin or vibrate as they travel alongthe path.

It should also be noted that there are many alternative ways ofimplementing the methods and apparatuses of the present invention. Forexample, in conjunction with the media carousel, the media items may notbe assigned primary and secondary positions such that items can behighlighted and selected while at any position in the carousel. Inaddition, in conjunction with the slider mentioned in FIGS. 17A-17E, theslider may be configured to traverse rows and columns in a vertical,horizontal, diagonal and/or other direction (rather than just ahorizontal direction).

It is therefore intended that the following appended claims beinterpreted as including all such alterations, permutations, andequivalents as fall within the true spirit and scope of the presentinvention.

The invention claimed is:
 1. A method for playing sequential mediacontent by a media playback application operating on a computing device,said method comprising: (a) initiating playing of the sequential mediacontent by the media playback application; (b) receiving a user inputrequesting to start playing at a new position in the sequential mediacontent; (c) marking a current position in the sequential media content;(d) thereafter initiating playing of the sequential media content at thenew position, wherein the new position is at a chapter beginning in thesequential media content; (e) receiving a user input requesting to resetplaying to the marked current position; and (f) subsequently initiatingplaying of the sequential media content at the marked current position.2. A method as recited in claim 1, wherein said initiating (a) plays thesequential media content from the beginning.
 3. A method as recited inclaim 1, wherein the current position, when marked, becomes a virtualchapter position.
 4. A method as recited in claim 1, wherein the userinput is provided by a remote control device in response to a userinteraction therewith.
 5. A method as recited in claim 1, wherein theuser input is received at the computing device and directed to a mediacontrol center.
 6. A method as recited in claim 5, wherein the mediacontrol center directs the user input to one of a plurality of mediaapplications operating on the computing device.
 7. A media navigationmethod for navigating through a media item having sequential mediacontent arranged in a series of chapters, said method comprising: (a)receiving a play request to play the media item; (b) playing thesequential media content of the media item in response to the playrequest; (c) receiving a user navigation input with respect to the mediaitem; (d) saving a current play position as a virtual chapter inresponse to said receiving (c) of the user navigation input; and (e)jumping to and playing a next chapter in the sequential media content ofthe media item in response to said receiving (c) of the user navigationinput, wherein the virtual chapter corresponds to a position in achapter of the sequential media content, and wherein the receiving theuser navigation input and the saving the current play position occurwithout interrupting play of the media item.
 8. A media navigationmethod as recited in claim 7, wherein the next chapter can be an actualchapter or a virtual chapter.
 9. A media navigation method fornavigating through a media item having sequential media content arrangedin a series of chapters, said method comprising: (a) receiving a playrequest to play the media item; (b) playing the sequential media contentof the media item in response to the play request; (c) receiving a firstuser navigation input with respect to the media item while being playedin a current chapter; (d) saving a current play position as a virtualchapter in response to said receiving (c) of the first user navigationinput; (e) jumping forward to a next chapter in the sequential mediacontent of the media item in response to said receiving (c) of the firstuser navigation input; (f) receiving a second user navigation input withrespect to the media item; and (g) jumping backward to the virtualchapter in the sequential media content of the media item in response tosaid receiving (c) of the second user navigation input, wherein thevirtual chapter corresponds to a position in the current chapter of thesequential media content.
 10. A media navigation method as recited inclaim 9, wherein said media navigation method operates on a computingdevice, and wherein the first and second user navigation inputs arereceived at the computing device and directed to a media control center.11. A method as recited in claim 10, wherein the media control centerdirects the first and second user input to one of a plurality of mediaapplications operating on the computing device, and wherein said playing(b) of the sequential media content is performed by the one of theplurality of media applications.
 12. A method as recited in claim 11,wherein the computing device is a personal computer.
 13. Anon-transitory computer readable medium including at least computerprogram code for playing sequential media content by a media playbackapplication operating on a computing device, said computer readablemedium comprising: computer program code for initiating playing of thesequential media content by the media playback application; computerprogram code for receiving a user input requesting to start playing at anew position in the sequential media content, wherein the new positionis at a chapter beginning in the sequential media content; computerprogram code for marking a current position in the sequential mediacontent; computer program code for thereafter initiating playing of thesequential media content at the new position; computer program code forreceiving a user input requesting to reset playing to the marked currentposition; and computer program code for subsequently initiating playingof the sequential media content at the marked current position.
 14. Anon-transitory computer readable medium as recited in claim 13, whereinsaid computer program code for initiating plays the sequential mediacontent from the beginning.
 15. A non-transitory computer readablemedium as recited in claim 13, wherein the current position, whenmarked, becomes a virtual chapter position.
 16. A non-transitorycomputer readable medium as recited in claim 13, wherein the user inputis provided by a remote control device in response to a user interactiontherewith.
 17. A non-transitory computer readable medium as recited inclaim 13, wherein the user input is received at the computer device anddirected to a media control center, and wherein the media control centerdirects the user input to one of a plurality of media applicationsoperating on the computing device.